package com.qiaofang.applet.service.member.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.qiaofang.applet.common.base.BaseDomain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.mongodb.core.mapping.Document;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@Document(collection = "member_employee")
@ApiModel("经纪人表")
@NoArgsConstructor
public class Employee extends BaseDomain {

    @ApiModelProperty("经纪人唯一UUID")
    private String employeeUniqueUuid;

    @ApiModelProperty("经纪人UUID")
    private String employeeUuid;

    @ApiModelProperty("姓名")
    private String employeeName;

    @ApiModelProperty("saas经纪人姓名")
    private String name;

    @ApiModelProperty("部门UUID")
    private String deptUuid;

    @ApiModelProperty("经纪人照片")
    private String photoUrl;

    @ApiModelProperty("职务名称")
    private String positionName;

    @ApiModelProperty("性别 男/女")
    private String gender;

    @ApiModelProperty("手机")
    private String mobilePhone;

    @ApiModelProperty(value = "SAAS手机")
    private String cellphone;

    @ApiModelProperty("经纪人状态 区分离职与其他状态")
    private String employeeStatus;

    @ApiModelProperty("主推 true主推  false不主推")
    private Boolean recommend;

    @ApiModelProperty("推荐语")
    private String recommendDescribe;

    @ApiModelProperty("关联更新 true:已更新关联数据 false:未更新关联数据")
    private Boolean relationUpdate;

    @ApiModelProperty("是否删除")
    private Boolean deleted;

    @ApiModelProperty("最后解析日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date lastSyncDate;

    @ApiModelProperty("部门名称")
    private String deptName;

    @ApiModelProperty("会员备注列表")
    private List<MemberRemark> remarkList;

    @ApiModelProperty("标签uuid列表")
    private List<String> labelUuidList;

    @ApiModelProperty(value = "入职时间")
    private Date joinDate;

    @ApiModelProperty("参加工作时间")
    private Date attendWorkTime;

    @ApiModelProperty(value = "状态")
    private String status;

    @ApiModelProperty(value = "带看次数")
    private BigDecimal inspectionCount;

    @ApiModelProperty(value = "成交单数")
    private BigDecimal tradeCount;

    @ApiModelProperty(value = "粉丝数")
    private Long focusByCount;

    @ApiModelProperty(value = "接待数")
    private Long receptionCount;

    @ApiModelProperty(value = "营销经纪人uuid")
    private String marketingEmployeeUuid;

}
